package com.opensky.module.sys.interfaces.frm;

import com.opensky.common.interfaces.frm.SortFieldFrm;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.List;
import java.util.Date;

/**
 * 用户表(表sys_user)请求参数对象
 *
 * @author 中国印
 * @date 2021-11-26 14:24:35
 */
@ApiModel("表(sys_user)实体类查询Frm")
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class SysUserQueryFrm {

    /**
     * 主键
     */
    @ApiModelProperty(value = "主键", example = "'1'")
    private String id;


    /**
     * 登录名
     */
    @ApiModelProperty(value = "登录名", example = "'1'")
    private String loginName;


    /**
     * 登陆密码
     */
    @ApiModelProperty(value = "登陆密码", example = "'1'")
    private String loginPasswd;


    /**
     * 姓名
     */
    @ApiModelProperty(value = "姓名", example = "'1'")
    private String realname;


    /**
     * 性别。0：未知；1：男；2：女
     */
    @ApiModelProperty(value = "性别。0：未知；1：男；2：女", example = "1")
    private Integer sex;


    /**
     * 手机号码
     */
    @ApiModelProperty(value = "手机号码", example = "'1'")
    private String phone;


    /**
     * 固定电话
     */
    @ApiModelProperty(value = "固定电话", example = "'1'")
    private String tel;


    /**
     * 邮箱
     */
    @ApiModelProperty(value = "邮箱", example = "'1'")
    private String email;


    /**
     * 用户头像
     */
    @ApiModelProperty(value = "用户头像", example = "'1'")
    private String avatar;


    /**
     * 职务名称
     */
    @ApiModelProperty(value = "职务名称", example = "'1'")
    private String jobTitle;


    /**
     * 用户状态。0：正常；1：禁用
     */
    @ApiModelProperty(value = "用户状态。0：正常；1：禁用", example = "1")
    private Integer status;


    /**
     * 排序。值越小越靠前
     */
    @ApiModelProperty(value = "排序。值越小越靠前", example = "1")
    private Integer sort;


    /**
     * 创建人
     */
    @ApiModelProperty(value = "创建人", example = "1")
    private Long createBy;


    /**
     * 修改人
     */
    @ApiModelProperty(value = "修改人", example = "1")
    private Long updateBy;


    /**
     * 创建时间
     */
    @ApiModelProperty(value = "创建时间 yyyy-MM-dd", example = "2021-05-20")
    private Date createTime;

    /**
     * 创建时间起
     */
    @ApiModelProperty(value = "创建时间起 yyyy-MM-dd HH:mm:ss", example = "2021-05-20 00:00:00")
    private String createTimeBegin;

    /**
     * 创建时间止
     */
    @ApiModelProperty(value = "创建时间止 yyyy-MM-dd HH:mm:ss", example = "2021-05-20  23:59:59")
    private String createTimeEnd;

    /**
     * 更新时间
     */
    @ApiModelProperty(value = "更新时间 yyyy-MM-dd", example = "2021-05-20")
    private Date updateTime;

    /**
     * 更新时间起
     */
    @ApiModelProperty(value = "更新时间起 yyyy-MM-dd HH:mm:ss", example = "2021-05-20 00:00:00")
    private String updateTimeBegin;

    /**
     * 更新时间止
     */
    @ApiModelProperty(value = "更新时间止 yyyy-MM-dd HH:mm:ss", example = "2021-05-20  23:59:59")
    private String updateTimeEnd;

    /**
     * 排序字段集合
     */
    @ApiModelProperty(value = "排序字段集合")
    List<SortFieldFrm> sortFields;

    /**
     * 查询页
     */
    @ApiModelProperty(value = "查询页", example = "1")
    private Integer pageNum;

    /**
     * 每页数量
     */
    @ApiModelProperty(value = "每页数量", example = "10")
    private Integer pageSize;
}

